package com.ruoyi.project.pm.pview.domain;


import com.ruoyi.project.sedd.order.domain.SellOrderB;

import java.sql.Date;
import java.util.Objects;

/**
 *  存储三表联查分页查询的结果的实体类
 */
public class Pview extends PmPview {
    //客户表属性
    private Integer cusId;//客户编号
    private String cusName;//客户名称
    private String cusCompany;//客户公司
    private String cusIpone;//客户联系方式
    private String IDNubmer;//身份证号
    //订单表属性
    private Integer orderId;//订单编号
    private String itemName;//项目名称
    private Integer collId;//客户编号
    private Double orderNumber;//订单金额
    private Integer userId;//销售人员编号
    private Integer deptId;//部门编号
    private java.sql.Date createTime;//创建时间
    private String paymentMethod;//付款方式
    private String deliveryMethod;//配送方式
    private String remark;//备注
    private String orderCycle;//项目周期

    public Pview() {
    }

    public Pview(Integer cusId, String cusName, String cusCompany, String cusIpone, String IDNubmer, Integer orderId, String itemName, Integer collId, Double orderNumber, Integer userId, Integer deptId, Date createTime, String paymentMethod, String deliveryMethod, String remark, String orderCycle) {
        this.cusId = cusId;
        this.cusName = cusName;
        this.cusCompany = cusCompany;
        this.cusIpone = cusIpone;
        this.IDNubmer = IDNubmer;
        this.orderId = orderId;
        this.itemName = itemName;
        this.collId = collId;
        this.orderNumber = orderNumber;
        this.userId = userId;
        this.deptId = deptId;
        this.createTime = createTime;
        this.paymentMethod = paymentMethod;
        this.deliveryMethod = deliveryMethod;
        this.remark = remark;
        this.orderCycle = orderCycle;
    }

    public Pview(Integer proId, String proType, String proStyle, String proState, Integer proOrderId, java.util.Date endTime, String proSyno, SellOrderB sellOrder, Integer cusId, String cusName, String cusCompany, String cusIpone, String IDNubmer, Integer orderId, String itemName, Integer collId, Double orderNumber, Integer userId, Integer deptId, Date createTime, String paymentMethod, String deliveryMethod, String remark, String orderCycle) {
        super(proId, proType, proStyle, proState, proOrderId, endTime, proSyno, sellOrder);
        this.cusId = cusId;
        this.cusName = cusName;
        this.cusCompany = cusCompany;
        this.cusIpone = cusIpone;
        this.IDNubmer = IDNubmer;
        this.orderId = orderId;
        this.itemName = itemName;
        this.collId = collId;
        this.orderNumber = orderNumber;
        this.userId = userId;
        this.deptId = deptId;
        this.createTime = createTime;
        this.paymentMethod = paymentMethod;
        this.deliveryMethod = deliveryMethod;
        this.remark = remark;
        this.orderCycle = orderCycle;
    }

    public Integer getCusId() {
        return cusId;
    }

    public void setCusId(Integer cusId) {
        this.cusId = cusId;
    }

    public String getCusName() {
        return cusName;
    }

    public void setCusName(String cusName) {
        this.cusName = cusName;
    }

    public String getCusCompany() {
        return cusCompany;
    }

    public void setCusCompany(String cusCompany) {
        this.cusCompany = cusCompany;
    }

    public String getCusIpone() {
        return cusIpone;
    }

    public void setCusIpone(String cusIpone) {
        this.cusIpone = cusIpone;
    }

    public String getIDNubmer() {
        return IDNubmer;
    }

    public void setIDNubmer(String IDNubmer) {
        this.IDNubmer = IDNubmer;
    }

    public Integer getOrderId() {
        return orderId;
    }

    public void setOrderId(Integer orderId) {
        this.orderId = orderId;
    }

    public String getItemName() {
        return itemName;
    }

    public void setItemName(String itemName) {
        this.itemName = itemName;
    }

    public Integer getCollId() {
        return collId;
    }

    public void setCollId(Integer collId) {
        this.collId = collId;
    }

    public Double getOrderNumber() {
        return orderNumber;
    }

    public void setOrderNumber(Double orderNumber) {
        this.orderNumber = orderNumber;
    }

    public Integer getUserId() {
        return userId;
    }

    public void setUserId(Integer userId) {
        this.userId = userId;
    }

    public Integer getDeptId() {
        return deptId;
    }

    public void setDeptId(Integer deptId) {
        this.deptId = deptId;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public String getPaymentMethod() {
        return paymentMethod;
    }

    public void setPaymentMethod(String paymentMethod) {
        this.paymentMethod = paymentMethod;
    }

    public String getDeliveryMethod() {
        return deliveryMethod;
    }

    public void setDeliveryMethod(String deliveryMethod) {
        this.deliveryMethod = deliveryMethod;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public String getOrderCycle() {
        return orderCycle;
    }

    public void setOrderCycle(String orderCycle) {
        this.orderCycle = orderCycle;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        if (!super.equals(o)) return false;
        Pview pview = (Pview) o;
        return Objects.equals(cusId, pview.cusId) &&
                Objects.equals(cusName, pview.cusName) &&
                Objects.equals(cusCompany, pview.cusCompany) &&
                Objects.equals(cusIpone, pview.cusIpone) &&
                Objects.equals(IDNubmer, pview.IDNubmer) &&
                Objects.equals(orderId, pview.orderId) &&
                Objects.equals(itemName, pview.itemName) &&
                Objects.equals(collId, pview.collId) &&
                Objects.equals(orderNumber, pview.orderNumber) &&
                Objects.equals(userId, pview.userId) &&
                Objects.equals(deptId, pview.deptId) &&
                Objects.equals(createTime, pview.createTime) &&
                Objects.equals(paymentMethod, pview.paymentMethod) &&
                Objects.equals(deliveryMethod, pview.deliveryMethod) &&
                Objects.equals(remark, pview.remark) &&
                Objects.equals(orderCycle, pview.orderCycle);
    }

    @Override
    public int hashCode() {
        return Objects.hash(super.hashCode(), cusId, cusName, cusCompany, cusIpone, IDNubmer, orderId, itemName, collId, orderNumber, userId, deptId, createTime, paymentMethod, deliveryMethod, remark, orderCycle);
    }

    @Override
    public String toString() {
        return "Pview{" +
                "cusId=" + cusId +
                ", cusName='" + cusName + '\'' +
                ", cusCompany='" + cusCompany + '\'' +
                ", cusIpone='" + cusIpone + '\'' +
                ", IDNubmer='" + IDNubmer + '\'' +
                ", orderId=" + orderId +
                ", itemName='" + itemName + '\'' +
                ", collId=" + collId +
                ", orderNumber=" + orderNumber +
                ", userId=" + userId +
                ", deptId=" + deptId +
                ", createTime=" + createTime +
                ", paymentMethod='" + paymentMethod + '\'' +
                ", deliveryMethod='" + deliveryMethod + '\'' +
                ", remark='" + remark + '\'' +
                ", orderCycle='" + orderCycle + '\'' +
                '}';
    }
}
